Skip to content

feat: Enhance email template, add RG owner tag, scalability input#921

Merged
Roopan-Microsoft merged 2 commits into
devfrom
psl-workflowchanges
May 21, 2026
Merged

feat: Enhance email template, add RG owner tag, scalability input#921
Roopan-Microsoft merged 2 commits into
devfrom
psl-workflowchanges

Conversation

@Vamshi-Microsoft

Copy link
Copy Markdown
Contributor

Purpose

This pull request makes several improvements to the GitHub Actions workflows for Azure deployments. The main changes add support for an "enable scalability" option for WAF deployments, enhance validation and parameter passing for this and other options, and improve resource group tagging. There are also updates to input descriptions for clarity and expanded Azure region choices.

Enable Scalability Feature for WAF Deployments:

  • Added a new enable_scalability (or ENABLE_SCALABILITY) input to all relevant workflows (deploy-v2.yml, deploy-orchestrator.yml, job-azure-deploy.yml, job-deploy-linux.yml, job-deploy-windows.yml) to allow toggling scalability features for WAF deployments. This includes input validation, parameter propagation, and updating the deployment parameters with the chosen value. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]

Resource Group Tagging Improvements:

  • Updated resource group creation and update steps to always add or update an Owner tag with the GitHub actor, both when creating a new resource group and when deploying to an existing one. This improves resource tracking and ownership clarity. [1] [2]

Input Description and Validation Enhancements:

  • Improved and clarified input descriptions for region, WAF, EXP, cleanup, and resource IDs to make their purpose and usage clearer for users. [1] [2]
  • Added and improved validation logic for new and existing boolean inputs, ensuring they accept only true or false values and providing clear error messages when validation fails. [1] [2] [3]

Azure Region Options Update:

  • Updated the list of selectable Azure regions for deployment, adding several new regions and removing some less-used ones.

Parameter Passing and Workflow Consistency:

  • Ensured that all new and existing inputs are consistently passed between workflow steps, jobs, and reusable workflows, reducing the risk of misconfiguration. [1] [2] [3]

These changes collectively enhance the flexibility, clarity, and maintainability of the deployment workflows.

Does this introduce a breaking change?

  • Yes
  • No

Golden Path Validation

  • I have tested the primary workflows (the "golden path") to ensure they function correctly without errors.

Deployment Validation

  • I have validated the deployment process successfully and all services are running as expected with this change.

What to Check

Verify that the following are valid

  • ...

Other Information

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR enhances the GitHub Actions Azure deployment workflows by adding a WAF “enable scalability” toggle, improving resource group ownership tagging, and modernizing email notification templates.

Changes:

  • Adds an enable_scalability / ENABLE_SCALABILITY input and propagates it through the deployment workflow chain to update infra/main.parameters.json for WAF deployments.
  • Ensures resource groups are tagged with Owner=<github.actor> on create and (best-effort) update.
  • Reworks notification emails into richer HTML templates and adds HTML-escaping for some injected inputs.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
.github/workflows/job-send-notifications.yml Updates email templates to HTML “pill” status style and adds partial HTML-escaping for inputs.
.github/workflows/job-deploy-windows.yml Adds ENABLE_SCALABILITY input and writes enableScalability into WAF parameters via jq.
.github/workflows/job-deploy-linux.yml Adds ENABLE_SCALABILITY input and writes enableScalability into WAF parameters via jq.
.github/workflows/job-azure-deploy.yml Adds enable_scalability input, sets ENABLE_SCALABILITY, and tags RGs with Owner.
.github/workflows/deploy-v2.yml Adds/validates enable_scalability, refreshes region options, and improves input descriptions.
.github/workflows/deploy-orchestrator.yml Propagates enable_scalability into the reusable deployment workflow.
.github/workflows/deploy-KMGeneric.yml Adds Owner tagging behavior for RG create/update.
Comments suppressed due to low confidence (3)

.github/workflows/job-send-notifications.yml:450

  • TEST_SUITE_NAME is inserted into the HTML email without escaping. Since it can originate from the run_e2e_tests input, please HTML-escape it (similar to WEBAPP_URL/RESOURCE_GROUP/TEST_REPORT_URL) to avoid injection in the notification body.
                    <tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Test Suite</td>
                        <td style="padding:8px 0; font-size:13px; color:#111827;">${TEST_SUITE_NAME}</td></tr>
                    <tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Test Report</td>
                        <td style="padding:8px 0; font-size:13px;"><a href="${TEST_REPORT_URL}" style="color:#2563eb; text-decoration:none;">&#x1F4C4; View Report</a></td></tr>

.github/workflows/job-send-notifications.yml:539

  • TEST_SUITE_NAME is embedded directly into the HTML email body without escaping. Because it can be user-influenced via the run_e2e_tests input, HTML-escape it to prevent injection in email notifications.
                    <tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Test Suite</td>
                        <td style="padding:8px 0; font-size:13px; color:#111827;">${TEST_SUITE_NAME}</td></tr>

.github/workflows/job-send-notifications.yml:629

  • TEST_SUITE_NAME is embedded directly into the HTML email body without escaping. Because it can be user-influenced via the run_e2e_tests input, HTML-escape it to prevent injection in email notifications.
                    <tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Test Suite</td>
                        <td style="padding:8px 0; font-size:13px; color:#111827;">${TEST_SUITE_NAME}</td></tr>

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/job-azure-deploy.yml
Comment thread .github/workflows/job-send-notifications.yml
Comment thread .github/workflows/job-send-notifications.yml
@Roopan-Microsoft Roopan-Microsoft merged commit 4b2af3f into dev May 21, 2026
2 checks passed
@Roopan-Microsoft Roopan-Microsoft deleted the psl-workflowchanges branch May 21, 2026 12:12
@github-actions

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 3.23.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants